<?php
class ZTreeWidget extends CWidget {
	public $treeItems;

	public function run() {
		$this->publishAssets();
		$cs = Yii::app()->clientScript;
		$sample = <<<EOF
		var setting = {	};

		var zNodes =[
			{ name:"父节点1 - 展开", open:true,
				childs: [
					{ name:"父节点11 - 折叠",
						childs: [
							{ name:"叶子节点111"},
							{ name:"叶子节点112"},
							{ name:"叶子节点113"},
							{ name:"叶子节点114"}
						]},
					{ name:"父节点12 - 折叠",
						childs: [
							{ name:"叶子节点121"},
							{ name:"叶子节点122"},
							{ name:"叶子节点123"},
							{ name:"叶子节点124"}
						]},
					{ name:"父节点13 - 没有子节点", isParent:true}
				]},
			{ name:"父节点2 - 折叠",
				childs: [
					{ name:"父节点21 - 展开", open:true,
						childs: [
							{ name:"叶子节点211"},
							{ name:"叶子节点212"},
							{ name:"叶子节点213"},
							{ name:"叶子节点214"}
						]},
					{ name:"父节点22 - 折叠",
						childs: [
							{ name:"叶子节点221"},
							{ name:"叶子节点222"},
							{ name:"叶子节点223"},
							{ name:"叶子节点224"}
						]},
					{ name:"父节点23 - 折叠",
						childs: [
							{ name:"叶子节点231"},
							{ name:"叶子节点232"},
							{ name:"叶子节点233"},
							{ name:"叶子节点234"}
						]}
				]},
			{ name:"父节点3 - 没有子节点", isParent:true}

		];

		$(document).ready(function(){
			$.fn.zTree.init($("#treeDemo"), setting, zNodes);
		});
		
EOF;
		$nodesJson = CJSON::encode($this->treeItems);
		$script = <<<EOF
			$.fn.zTree.init($("#treeDemo"), {	}, $nodesJson);
		
EOF;
		$cs->registerScript($this->getId() . '-ztree', $script);
		$this->render('tree', array());
	}

	protected function publishAssets() {
		$localPath = dirname(__FILE__) . DIRECTORY_SEPARATOR . 'assets';
		$publishPath = Yii::app()->getAssetManager()->publish($localPath);
		$cs = Yii::app()->clientScript;
		$cs->registerScriptFile($publishPath . '/js/jquery.ztree.core-3.0.min.js');
		$cs->registerCssFile($publishPath . '/css/zTreeStyle/zTreeStyle.css');
	}
}
